(function ($) {
  var that;
  // 把方法私有化
  var methods = {
    init: function (content) {
      // console.log(content);
      console.log("init");
      // this.html("这是init初始化后的内容")
      this.html(content);
    },
    setData: function () {
      console.log("setData");
    },
    getData: function () {
      console.log("getData");
    },
    show: function () {
      console.log("show");
    },
    upData: function () {
      console.log("upData");
    },
    destroy: function () {
      console.log("destroy");
    },
  };

  $.fn.namespace = function (option) {
    that = this;
    // methods[option.fn]() // 这种方法中的this指向会出问题
    // methods[option.fn].apply(that,[option]) //借来的指针 call，apply
    methods[option.fn].call(that, option.txt); //将methods[option.fn]中的this指向that
    return that;
  };
  
})(jQuery);
